/*
 * Edge.h
 *
 *  Created on: May 12, 2011
 *      Author: ei07121
 */


#ifndef EDGE_H_
#define EDGE_H_

#include <cstdio>
#include "graphviewer.h"
#include <fstream>
#include <iostream>
#include <sstream>
#include <string>
#include <vector>

#include "Vertex.h"
#include "connection.h"
using namespace std;


class Edge {

	int custo;
	Vertex  v_inicio;
	Vertex  v_fim;
	int idEdge;//id de Edge

	string nome;
	string cor;


public:

	Edge(string nome, string cor, int id, int c, Vertex i, Vertex f);
	virtual ~Edge(){}

    int getCusto() const;
    Vertex getFim() const;
    int getIdEdge() const;
    Vertex getInicio() const;
    void setCusto(int custo);
    void setFim(Vertex v_fim);
    void setIdEdge(int idEdge);
    void setInicio(Vertex v_inicio);
    string getCor() const;
    string getNome() const;
    void setCor(string cor);
    void setNome(string nome);

    Vertex findNext(Vertex v);


};


#endif /* EDGE_H_ */

